#include <iostream>
using std::cout;
using std::endl;
#define MAX(a, b) ((a) > (b) ? (a) : (b)) 
#define multiply(a,b) a * b

inline
int max(int x, int y)
{
	return x > y ? x : y;
}


void test0(){
    //如果宏函数最外面没有带括号
    //20 > 10 ? 20 : 10 + 20
    int result = MAX(20,10) + 20;//result的值是多少？
    //10 > 20 ? 10 : 20 + 20
    int result2 = MAX(10,20) + 20;//result2的值是多少？
    cout << result << endl;
    cout << result2 << endl;


    //3 + 4 * 5
    int num = multiply(3+4,5);
    cout << num << endl;

    cout << endl;
    int i = 4,j = 3;
    //((i++) > (j) ? (i++) : (j))
    result = max(i++,j);
    cout << result << endl; //result = 5；
    cout << i << endl; //i = 6;
}

int main(void){
    test0();
    return 0;
}
